package com.gthncz.proxy;

import com.gthncz.proxy.impl.RealMovie;

public class StaticProxyDemo {

    public static void main(String[] args){
        /**
         * <p>
         *     代理模式可以在不修改被代理对象的基础上，通过扩展代理类，进行一些功能的附加与增强。
         *     值得注意的是，代理类和被代理类应该共同实现一个接口，或者是共同继承某个类。
         * </p>
         *
         * <p>
         *    为什么叫做静态呢？
         *    因为它的类型是事先预定好的，比如上面代码中的 Cinema 这个类。下面要介绍的内容就是动态代理。
         * </p>
         */
        Movie realMovie = new RealMovie();
        Movie proxyMovie = new Cinema(realMovie);
        proxyMovie.play();
    }

}
